package com.minis.beans.factory.support;

import com.minis.BeansException;
import com.minis.beans.factory.BeanFactory;
import com.minis.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor;
import com.minis.beans.factory.config.BeanPostProcessor;

import java.util.ArrayList;
import java.util.List;

/**
 * 功能描述
 *
 * @author wanghongqian
 * @date 2023/10/17 20:34
 */
public interface AutowireCapableBeanFactory extends BeanFactory {
    int AUTOWIRE_NO = 0;
    int AUTOWIRE_BY_NAME = 1;
    int AUTOWIRE_BY_TYPE = 2;

    Object applyBeanPostProcessorBeforeInitialization(Object existingBean,String beanName) throws BeansException;
    Object applyBeanPostProcessorAfterInitialization(Object existingBean,String beanName) throws BeansException;
}
